import os
import shutil

def add_subfolder_name_to_photos(input_folder):
    # 遍历输入文件夹下的所有子文件夹
    for root, dirs, files in os.walk(input_folder):
        for dir in dirs:
            # 获取子文件夹中的所有文件
            sub_items = os.listdir(os.path.join(root, dir))
            for sub_item in sub_items:
                # 如果是照片（以.jpg, .jpeg或.png结尾）
                if sub_item.endswith('.jpg') or sub_item.endswith('.jpeg') or sub_item.endswith('.png'):
                    # 获取文件的原始路径
                    old_file_path = os.path.join(root, dir, sub_item)
                    # 创建新的文件名
                    new_file_name = sub_item.rsplit('.', 1)[0] + '_' + root.split('/')[-1] + '.' + sub_item.rsplit('.', 1)[1]
                    # 获取文件的新路径
                    new_file_path = os.path.join(root, dir, new_file_name)
                    # 重命名文件
                    shutil.move(old_file_path, new_file_path)
                    print(f'文件 {sub_item} 已被重命名为 {new_file_name}。')

# 调用函数，指定输入文件夹
add_subfolder_name_to_photos('traindata_gt_guiji_old')
